[INFO] cloning repository https://github.com/jesusmgg/phantom-hunt-ld59-public
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jesusmgg/phantom-hunt-ld59-public" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjesusmgg%2Fphantom-hunt-ld59-public", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjesusmgg%2Fphantom-hunt-ld59-public'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8e8b581f3b12cff1cd3bbb449dfd716dd34317a5
[INFO] checking jesusmgg/phantom-hunt-ld59-public against try#4d8aa70caf2d2f6ef5a31eab47961bf7d0acacb7 for pr-158816
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjesusmgg%2Fphantom-hunt-ld59-public" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-5-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/jesusmgg/phantom-hunt-ld59-public
[INFO] finished tweaking git repo https://github.com/jesusmgg/phantom-hunt-ld59-public
[INFO] tweaked toml for git repo https://github.com/jesusmgg/phantom-hunt-ld59-public written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jesusmgg/phantom-hunt-ld59-public on toolchain 4d8aa70caf2d2f6ef5a31eab47961bf7d0acacb7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d8aa70caf2d2f6ef5a31eab47961bf7d0acacb7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jesusmgg/phantom-hunt-ld59-public already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d8aa70caf2d2f6ef5a31eab47961bf7d0acacb7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded quad-storage v0.1.3
[INFO] [stderr]   Downloaded nanoserde-derive v0.1.22
[INFO] [stderr]   Downloaded nanoserde v0.1.37
[INFO] [stderr]   Downloaded quad-storage-sys v0.1.0
[INFO] [stderr]   Downloaded sapp-jsutils v0.1.7
[INFO] [stderr]   Downloaded lewton v0.9.4
[INFO] [stderr]   Downloaded dasp_frame v0.11.0
[INFO] [stderr]   Downloaded nanoserde v0.2.1
[INFO] [stderr]   Downloaded ogg v0.7.1
[INFO] [stderr]   Downloaded audir-sles v0.1.0
[INFO] [stderr]   Downloaded quad-alsa-sys v0.3.2
[INFO] [stderr]   Downloaded miniz_oxide v0.8.4
[INFO] [stderr]   Downloaded nanoserde-derive v0.2.1
[INFO] [stderr]   Downloaded audrey v0.3.0
[INFO] [stderr]   Downloaded quad-snd v0.2.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d8e5a518e9ad89b9d9e7b59780775beca0423d6f5d467e26a4d62b54fc35328b
[INFO] running `Command { std: "docker" "start" "d8e5a518e9ad89b9d9e7b59780775beca0423d6f5d467e26a4d62b54fc35328b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d8e5a518e9ad89b9d9e7b59780775beca0423d6f5d467e26a4d62b54fc35328b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d8e5a518e9ad89b9d9e7b59780775beca0423d6f5d467e26a4d62b54fc35328b" "/opt/rustwide/cargo-home/bin/cargo" "+4d8aa70caf2d2f6ef5a31eab47961bf7d0acacb7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d8e5a518e9ad89b9d9e7b59780775beca0423d6f5d467e26a4d62b54fc35328b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d8e5a518e9ad89b9d9e7b59780775beca0423d6f5d467e26a4d62b54fc35328b" "/opt/rustwide/cargo-home/bin/cargo" "+4d8aa70caf2d2f6ef5a31eab47961bf7d0acacb7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]     Checking adler2 v2.0.0
[INFO] [stderr]    Compiling quad-alsa-sys v0.3.2
[INFO] [stderr]     Checking dasp_sample v0.11.0
[INFO] [stderr]     Checking hound v3.5.1
[INFO] [stderr]    Compiling quad-snd v0.2.8
[INFO] [stderr]    Compiling miniquad v0.4.8
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking ogg v0.7.1
[INFO] [stderr]     Checking bytemuck v1.21.0
[INFO] [stderr]     Checking ttf-parser v0.21.1
[INFO] [stderr]    Compiling nanoserde-derive v0.1.22
[INFO] [stderr]     Checking glam v0.27.0
[INFO] [stderr]    Compiling macroquad_macro v0.1.8
[INFO] [stderr]    Compiling phantom-hunt v1.0.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking quad-rand v0.2.3
[INFO] [stderr]    Compiling nanoserde-derive v0.2.1
[INFO] [stderr]     Checking lewton v0.9.4
[INFO] [stderr]     Checking miniz_oxide v0.8.4
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking dasp_frame v0.11.0
[INFO] [stderr]     Checking flate2 v1.0.35
[INFO] [stderr]     Checking nanoserde v0.2.1
[INFO] [stderr]     Checking nanoserde v0.1.37
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking audrey v0.3.0
[INFO] [stderr]     Checking quad-storage v0.1.3
[INFO] [stderr]     Checking fontdue v0.9.3
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking macroquad v0.4.14
[INFO] [stdout] warning: unused imports: `audio::load_sound`, `experimental::coroutines::start_coroutine`, and `load_texture`
[INFO] [stdout]   --> src/assets/asset_loader.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     audio::load_sound,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     experimental::coroutines::start_coroutine,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     prelude::*,
[INFO] [stdout] 16 |     texture::{load_texture, Texture2D},
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FRAME_SIZE`
[INFO] [stdout]   --> src/level/level_editor.rs:19:62
[INFO] [stdout]    |
[INFO] [stdout] 19 |     unit_manager::{default_unit_spawns, UnitOwner, UnitType, FRAME_SIZE},
[INFO] [stdout]    |                                                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `background::Background`
[INFO] [stdout]  --> src/level/mod.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use background::Background;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `audio::load_sound`, `experimental::coroutines::start_coroutine`, and `load_texture`
[INFO] [stdout]   --> src/assets/asset_loader.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     audio::load_sound,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     experimental::coroutines::start_coroutine,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     prelude::*,
[INFO] [stdout] 16 |     texture::{load_texture, Texture2D},
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FRAME_SIZE`
[INFO] [stdout]   --> src/level/level_editor.rs:19:62
[INFO] [stdout]    |
[INFO] [stdout] 19 |     unit_manager::{default_unit_spawns, UnitOwner, UnitType, FRAME_SIZE},
[INFO] [stdout]    |                                                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `background::Background`
[INFO] [stdout]  --> src/level/mod.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use background::Background;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/enums.rs:1:1
[INFO] [stdout]     |
[INFO] [stdout]   1 | / crate::simple_enum_serbin!(Direction {
[INFO] [stdout]   2 | |     Up => 0,
[INFO] [stdout]   3 | |     Right => 1,
[INFO] [stdout]   4 | |     Down => 2,
[INFO] [stdout]   5 | |     Left => 3,
[INFO] [stdout]   6 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `crate::simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/game_data/proxy.rs:184:1
[INFO] [stdout]     |
[INFO] [stdout] 184 | / crate::simple_enum_serbin!(FlameType {
[INFO] [stdout] 185 | |     Normal => 0,
[INFO] [stdout] 186 | |     Eternal => 1,
[INFO] [stdout] 187 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `crate::simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/level/interactable.rs:133:1
[INFO] [stdout]     |
[INFO] [stdout] 133 | / simple_enum_serbin!(LightIntensity {
[INFO] [stdout] 134 | |     Strong => 0,
[INFO] [stdout] 135 | |     Medium => 1,
[INFO] [stdout] 136 | |     Dim => 2,
[INFO] [stdout] 137 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/level/interactable.rs:214:1
[INFO] [stdout]     |
[INFO] [stdout] 214 | / simple_enum_serbin!(Item {
[INFO] [stdout] 215 | |     Antenna => 0,
[INFO] [stdout] 216 | |     Rifle => 10,
[INFO] [stdout] 217 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/game_data/macros.rs:36:28
[INFO] [stdout]    |
[INFO] [stdout] 36 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]    |                              ---------------------------^
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              unreachable statement
[INFO] [stdout]    |                              any code following this expression is unreachable
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/level/tile.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout]  6 | / simple_enum_serbin!(TileType, ALL_TILES {
[INFO] [stdout]  7 | |     WallU => 0,
[INFO] [stdout]  8 | |     WallR => 10,
[INFO] [stdout]  9 | |     WallD => 20,
[INFO] [stdout] ...  |
[INFO] [stdout] 29 | |     ItemFloor => 430,
[INFO] [stdout] 30 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/enums.rs:1:1
[INFO] [stdout]     |
[INFO] [stdout]   1 | / crate::simple_enum_serbin!(Direction {
[INFO] [stdout]   2 | |     Up => 0,
[INFO] [stdout]   3 | |     Right => 1,
[INFO] [stdout]   4 | |     Down => 2,
[INFO] [stdout]   5 | |     Left => 3,
[INFO] [stdout]   6 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `crate::simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/unit_manager.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout]  70 | / simple_enum_serbin!(UnitType {
[INFO] [stdout]  71 | |     Player => 0,
[INFO] [stdout]  72 | |
[INFO] [stdout]  73 | |     Phantom => 100,
[INFO] [stdout]  74 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/game_data/proxy.rs:184:1
[INFO] [stdout]     |
[INFO] [stdout] 184 | / crate::simple_enum_serbin!(FlameType {
[INFO] [stdout] 185 | |     Normal => 0,
[INFO] [stdout] 186 | |     Eternal => 1,
[INFO] [stdout] 187 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `crate::simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/level/interactable.rs:133:1
[INFO] [stdout]     |
[INFO] [stdout] 133 | / simple_enum_serbin!(LightIntensity {
[INFO] [stdout] 134 | |     Strong => 0,
[INFO] [stdout] 135 | |     Medium => 1,
[INFO] [stdout] 136 | |     Dim => 2,
[INFO] [stdout] 137 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/level/interactable.rs:214:1
[INFO] [stdout]     |
[INFO] [stdout] 214 | / simple_enum_serbin!(Item {
[INFO] [stdout] 215 | |     Antenna => 0,
[INFO] [stdout] 216 | |     Rifle => 10,
[INFO] [stdout] 217 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `image::GenericImageView`
[INFO] [stdout]   --> src/assets/asset_loader.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use image::GenericImageView;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_log`
[INFO] [stdout]   --> src/game_data/migration/macros.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   $debug_log: &mut $crate::debug::DebugLog,
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/game_data/migration/level_set.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / impl_versioned_migration!(LevelSet; version, offset, bytes, debug_log {
[INFO] [stdout]  4 | |     1 => default,
[INFO] [stdout]  5 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] help: `debug_log` is captured in macro and introduced a unused variable
[INFO] [stdout]   --> src/game_data/migration/macros.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   $debug_log: &mut $crate::debug::DebugLog,
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/game_data/migration/level_set.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / impl_versioned_migration!(LevelSet; version, offset, bytes, debug_log {
[INFO] [stdout]  4 | |     1 => default,
[INFO] [stdout]  5 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_versioned_migration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_log`
[INFO] [stdout]   --> src/game_data/migration/macros.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   $debug_log: &mut $crate::debug::DebugLog,
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/game_data/migration/unit_manager.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / impl_versioned_migration!(UnitManager; version, offset, bytes, debug_log {
[INFO] [stdout]  4 | |     1 => default,
[INFO] [stdout]  5 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] help: `debug_log` is captured in macro and introduced a unused variable
[INFO] [stdout]   --> src/game_data/migration/macros.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   $debug_log: &mut $crate::debug::DebugLog,
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/game_data/migration/unit_manager.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / impl_versioned_migration!(UnitManager; version, offset, bytes, debug_log {
[INFO] [stdout]  4 | |     1 => default,
[INFO] [stdout]  5 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    = note: this warning originates in the macro `impl_versioned_migration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/game_data/macros.rs:36:28
[INFO] [stdout]    |
[INFO] [stdout] 36 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]    |                              ---------------------------^
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              unreachable statement
[INFO] [stdout]    |                              any code following this expression is unreachable
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/level/tile.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout]  6 | / simple_enum_serbin!(TileType, ALL_TILES {
[INFO] [stdout]  7 | |     WallU => 0,
[INFO] [stdout]  8 | |     WallR => 10,
[INFO] [stdout]  9 | |     WallD => 20,
[INFO] [stdout] ...  |
[INFO] [stdout] 29 | |     ItemFloor => 430,
[INFO] [stdout] 30 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/game_data/macros.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                           $( return $enum_name::$variant; )*
[INFO] [stdout]     |                              ---------------------------^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              unreachable statement
[INFO] [stdout]     |                              any code following this expression is unreachable
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/unit_manager.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout]  70 | / simple_enum_serbin!(UnitType {
[INFO] [stdout]  71 | |     Player => 0,
[INFO] [stdout]  72 | |
[INFO] [stdout]  73 | |     Phantom => 100,
[INFO] [stdout]  74 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `image::GenericImageView`
[INFO] [stdout]   --> src/assets/asset_loader.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use image::GenericImageView;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_log`
[INFO] [stdout]   --> src/game_data/migration/macros.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   $debug_log: &mut $crate::debug::DebugLog,
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/game_data/migration/level_set.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / impl_versioned_migration!(LevelSet; version, offset, bytes, debug_log {
[INFO] [stdout]  4 | |     1 => default,
[INFO] [stdout]  5 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] help: `debug_log` is captured in macro and introduced a unused variable
[INFO] [stdout]   --> src/game_data/migration/macros.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   $debug_log: &mut $crate::debug::DebugLog,
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/game_data/migration/level_set.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / impl_versioned_migration!(LevelSet; version, offset, bytes, debug_log {
[INFO] [stdout]  4 | |     1 => default,
[INFO] [stdout]  5 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_versioned_migration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_log`
[INFO] [stdout]   --> src/game_data/migration/macros.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   $debug_log: &mut $crate::debug::DebugLog,
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/game_data/migration/unit_manager.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / impl_versioned_migration!(UnitManager; version, offset, bytes, debug_log {
[INFO] [stdout]  4 | |     1 => default,
[INFO] [stdout]  5 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] help: `debug_log` is captured in macro and introduced a unused variable
[INFO] [stdout]   --> src/game_data/migration/macros.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   $debug_log: &mut $crate::debug::DebugLog,
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/game_data/migration/unit_manager.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / impl_versioned_migration!(UnitManager; version, offset, bytes, debug_log {
[INFO] [stdout]  4 | |     1 => default,
[INFO] [stdout]  5 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    = note: this warning originates in the macro `impl_versioned_migration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clear` is never used
[INFO] [stdout]   --> src/debug.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl DebugLog {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `data_file_name` and `save` are never used
[INFO] [stdout]   --> src/game_data/game_data.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub trait GameData: Versioned {
[INFO] [stdout]    |           -------- methods in this trait
[INFO] [stdout] 42 |     fn data_file_name(&self) -> &str;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn save(&self, debug_log: &mut DebugLog) -> bool {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_interactables` is never used
[INFO] [stdout]   --> src/game_data/migration/interactable.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     deserialize_interactables,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_enum_hashmap_deserializer` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_unit_spawns` is never used
[INFO] [stdout]   --> src/game_data/migration/unit_spawn_data.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     deserialize_unit_spawns,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_struct_hashmap_deserializer` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALL_BACKGROUNDS` is never used
[INFO] [stdout]  --> src/level/background.rs:5:33
[INFO] [stdout]   |
[INFO] [stdout] 5 | simple_enum_serbin!(Background, ALL_BACKGROUNDS {
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `OptionalEnum` is never constructed
[INFO] [stdout]   --> src/level/level_editor.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub enum PropertyValue {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 77 |     OptionalEnum {
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PropertyValue` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `current_level_mut`, `get_level_at_pos_mut`, and `level_count` are never used
[INFO] [stdout]    --> src/level/level_manager.rs:370:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl LevelManager {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 370 |     pub fn current_level_mut(&mut self) -> Option<&mut Level> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn get_level_at_pos_mut(&mut self, pos: IVec2) -> Option<&mut Level> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn level_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SELECTION_CLICK_RADIUS` is never used
[INFO] [stdout]   --> src/selector.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const SELECTION_CLICK_RADIUS: f32 = TILE_SIZE_X;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `input`, `render`, `render_interactable_highlight`, and `find_clicked_unit` are never used
[INFO] [stdout]    --> src/selector.rs:33:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl Selector {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  33 |     pub fn input(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn render(&self, styles: &Styles, visible: bool) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn render_interactable_highlight(&self, level_manager: &LevelManager, styles: &Styles) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     fn find_clicked_unit(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level_pos` is never read
[INFO] [stdout]    --> src/unit_manager.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct VisualEffect {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 176 |     pub level_pos: IVec2,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `clear_selector_on_move`, `try_start_movement`, `count`, `get_all_positions`, and `get_unit_at_position` are never used
[INFO] [stdout]     --> src/unit_manager.rs:397:8
[INFO] [stdout]      |
[INFO] [stdout]  342 | impl UnitManager {
[INFO] [stdout]      | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  397 |     fn clear_selector_on_move(&self, unit_i: usize, selector: &mut Selector) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  404 |     fn try_start_movement(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1351 |     pub fn count(&self) -> usize {
[INFO] [stdout]      |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1373 |     pub fn get_all_positions(&self, level_manager: &LevelManager) -> Vec<(usize, Vec2)> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1529 |     pub fn get_unit_at_position(&self, level_pos: IVec2, tile_pos: IVec2) -> Option<usize> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ALL_INTERACTABLES` should have a snake case name
[INFO] [stdout]   --> src/level/interactable.rs:64:36
[INFO] [stdout]    |
[INFO] [stdout] 64 | enum_wrapper_serbin!(Interactable, ALL_INTERACTABLES {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `all_interactables`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clear` is never used
[INFO] [stdout]   --> src/debug.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl DebugLog {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `data_file_name` and `save` are never used
[INFO] [stdout]   --> src/game_data/game_data.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub trait GameData: Versioned {
[INFO] [stdout]    |           -------- methods in this trait
[INFO] [stdout] 42 |     fn data_file_name(&self) -> &str;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn save(&self, debug_log: &mut DebugLog) -> bool {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_interactables` is never used
[INFO] [stdout]   --> src/game_data/migration/interactable.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     deserialize_interactables,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_enum_hashmap_deserializer` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_unit_spawns` is never used
[INFO] [stdout]   --> src/game_data/migration/unit_spawn_data.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     deserialize_unit_spawns,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_struct_hashmap_deserializer` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALL_BACKGROUNDS` is never used
[INFO] [stdout]  --> src/level/background.rs:5:33
[INFO] [stdout]   |
[INFO] [stdout] 5 | simple_enum_serbin!(Background, ALL_BACKGROUNDS {
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `simple_enum_serbin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `OptionalEnum` is never constructed
[INFO] [stdout]   --> src/level/level_editor.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub enum PropertyValue {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 77 |     OptionalEnum {
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PropertyValue` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `current_level_mut`, `get_level_at_pos_mut`, and `level_count` are never used
[INFO] [stdout]    --> src/level/level_manager.rs:370:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl LevelManager {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 370 |     pub fn current_level_mut(&mut self) -> Option<&mut Level> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn get_level_at_pos_mut(&mut self, pos: IVec2) -> Option<&mut Level> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn level_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SELECTION_CLICK_RADIUS` is never used
[INFO] [stdout]   --> src/selector.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const SELECTION_CLICK_RADIUS: f32 = TILE_SIZE_X;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `input`, `render`, `render_interactable_highlight`, and `find_clicked_unit` are never used
[INFO] [stdout]    --> src/selector.rs:33:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl Selector {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  33 |     pub fn input(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn render(&self, styles: &Styles, visible: bool) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn render_interactable_highlight(&self, level_manager: &LevelManager, styles: &Styles) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     fn find_clicked_unit(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level_pos` is never read
[INFO] [stdout]    --> src/unit_manager.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct VisualEffect {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 176 |     pub level_pos: IVec2,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `clear_selector_on_move`, `try_start_movement`, `count`, `get_all_positions`, and `get_unit_at_position` are never used
[INFO] [stdout]     --> src/unit_manager.rs:397:8
[INFO] [stdout]      |
[INFO] [stdout]  342 | impl UnitManager {
[INFO] [stdout]      | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  397 |     fn clear_selector_on_move(&self, unit_i: usize, selector: &mut Selector) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  404 |     fn try_start_movement(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1351 |     pub fn count(&self) -> usize {
[INFO] [stdout]      |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1373 |     pub fn get_all_positions(&self, level_manager: &LevelManager) -> Vec<(usize, Vec2)> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1529 |     pub fn get_unit_at_position(&self, level_pos: IVec2, tile_pos: IVec2) -> Option<usize> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ALL_INTERACTABLES` should have a snake case name
[INFO] [stdout]   --> src/level/interactable.rs:64:36
[INFO] [stdout]    |
[INFO] [stdout] 64 | enum_wrapper_serbin!(Interactable, ALL_INTERACTABLES {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `all_interactables`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.87s
[INFO] running `Command { std: "docker" "inspect" "d8e5a518e9ad89b9d9e7b59780775beca0423d6f5d467e26a4d62b54fc35328b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d8e5a518e9ad89b9d9e7b59780775beca0423d6f5d467e26a4d62b54fc35328b", kill_on_drop: false }`
[INFO] [stdout] d8e5a518e9ad89b9d9e7b59780775beca0423d6f5d467e26a4d62b54fc35328b
